package cn.bugDance.domain.credit.repository;

import cn.bugDance.domain.credit.model.aggregate.CreditAdjustAggregate;
import cn.bugDance.domain.credit.model.entity.UserCreditAccountEntity;

public interface ICreditRepository {

    /**
     * 创建积分订单
     * @param creditAdjustAggregate 聚合
     */
    void createUserCreditOrder(CreditAdjustAggregate creditAdjustAggregate);

    /**
     * 查询用户积分账户
     * @param userId 用户ID
     * @return 积分账户实体
     */
    UserCreditAccountEntity queryUserCreditAccount(String userId);

    Integer queryAvailableAmount(String userId);

    void createUserCreditOrderRebate(CreditAdjustAggregate creditAdjustAggregate);
}
